Scene imaging method using a portable two-camera omni-imaging device for human-reachable environments

ABSTRACT

A scene imaging method using a portable two-camera omni-imaging device for human-reachable environments is disclosed. Firstly, an upper omni-image and a lower omni-image of at least one scene are captured. Next, image inpainting and image dehazing perform on the upper omni-image and the lower omni-image. Next, image unwrapping performs on the upper omni-image and the lower omni-image by a pano-mapping table, so as to form an upper panoramic image and a lower panoramic image respectively, and the upper panoramic image and the lower panoramic image respectively have an upper part and a lower part overlapping each other. Finally, a data item on the upper part and the lower part is obtained by view points of the scene and the pano-mapping table, thereby stitching the upper and lower panoramic images.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an imaging method, particularly to ascene imaging method using a portable two-camera omni-imaging device forhuman-reachable environments.

2. Description of the Related Art

In recent years, many street view systems have been developed. Toexploit a certain street scene, one may just browse a street view systemto see the scene online without going there. This provides great valueto applications like city touring, real estate sales, environmentalmanagement, etc. To collect street scenes, Google Street View Cars wereused. To enter narrow lanes, a Street View Trike was designed later.Also launched was a Street View Snowmobile for use on rough terrains.Aboard each of these vehicles is an imaging device with eight digitalcameras, one fish-eye camera, and three laser range finders for scenecollection. The device weighs about 150 kg.

Though the use of the Street View Trek overcomes the incapability of theStreet View Car in reaching narrow alleys, it is hard for a rider topedal the heavy tricycle on steep ways. Also, although the Snowmobilehas better mobility, it still cannot be ridden to some spaces likeindoor stairways, mountains tracks, garden paths, etc. Below are brieflycited some prior arts of the scene imaging method. Among them, theTaiwan patent No. M373507 uses two cameras to capture a scene atdifferent angles, and stitches a plurality of images by calculatingsetting values of the cameras. Besides, the Taiwan patent No. 201200960uses a camera to record directions and angles of images in combinationwith other equipments, wherein the directions and angles are helpful institching the images. For the prior arts, processing a large amount ofdata would result in time delay.

In view of the problems and shortcomings of the prior art, the presentinvention provides a scene imaging method using a portable two-cameraomni-imaging device for human-reachable environments, so as to solve theafore-mentioned problems of the prior art.

SUMMARY OF THE INVENTION

The primary objective of the present invention is to provide a sceneimaging method using a portable two-camera omni-imaging device forhuman-reachable environments, which captures an upper omni-image and alower omni-image and stitch them. The method uses properties of theomni-imaging device to greatly reduce the image amount for matching inthe stitching process, thereby reducing time for the stitching process.Besides, the omni-imaging device has light weight and high mobility, andovercomes the limit for equipments and environments to take images ofenvironments that a person reaches.

To achieve the above-mentioned objectives, the present inventionproposes a scene imaging method using a portable two-camera omni-imagingdevice for human-reachable environments. Firstly, an upper omni-imageand a lower omni-image of at least one scene are captured. Next, imageinpainting and image dehazing perform on the upper omni-image and thelower omni-image. Next, image unwrapping performs on the upperomni-image and the lower omni-image by a pano-mapping table, so as toform an upper panoramic image and a lower panoramic image respectively,and the upper panoramic image and the lower panoramic image respectivelyhave an upper part and a lower part overlapping each other. Then, a dataitem on the upper part and the lower part is obtained by a plurality ofview points of the scene and the pano-mapping table. Finally, the upperpanoramic image and the lower panoramic image are stitched to form atotal panoramic image according to the data.

Below, the embodiments are described in detailed in cooperation with theattached drawings to make easily understood the technical contents,characteristics, and accomplishments of the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram schematically showing an omni-imaging deviceconsisting of a pair of omni-cameras according to an embodiment of thepresent invention;

FIG. 2 is a diagram schematically showing an overlapping region producedby the omni-imaging device according to an embodiment of the presentinvention;

FIG. 3 is a flowchart of forming a total panoramic image according to anembodiment of the present invention;

FIGS. 4( a)-4(b) are diagrams schematically showing an upper omni-imageand a lower omni-image according to an embodiment of the presentinvention;

FIGS. 5( a)-5(b) are diagrams schematically showing first matching lineson an upper omni-image and a lower omni-image according to an embodimentof the present invention;

FIG. 6 is a diagram schematically showing second matching lines on anupper panoramic image and a lower panoramic image according to anembodiment of the present invention;

FIGS. 7( a)-7(b) are diagrams schematically showing upper and lowerfeature points on the upper panoramic image and the lower panoramicimage according to an embodiment of the present invention;

FIGS. 8( a)-8(b) are diagram schematically showing upper and lowermatching points on the upper panoramic image and the lower panoramicimage according to an embodiment of the present invention;

FIG. 9 is a diagram schematically showing the two light raysintersecting on the overlapping region according to an embodiment of thepresent invention;

FIG. 10 is a diagram schematically showing the first and secondintervals on the upper panoramic image and the lower panoramic imageaccording to an embodiment of the present invention;

FIG. 11 is a diagram schematically showing the first and seconddistances on the upper panoramic image and the lower panoramic imageaccording to an embodiment of the present invention;

FIG. 12 is a diagram schematically showing the first and secondconnections on the upper panoramic image and the lower panoramic imageaccording to an embodiment of the present invention;

FIG. 13 is a diagram schematically showing a total panoramic imageaccording to an embodiment of the present invention;

FIG. 14 is a flowchart of establishing a perspective-view image and anenvironment three-view diagram according to an embodiment of the presentinvention; and

FIG. 15 is a diagram schematically showing the total panoramic image,the perspective-view image and the environment three-view diagramaccording to an embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

As an improvement on conventional street view systems like the GoogleMap and the Google Earth, which cannot cover some special environmentareas, such as indoor space with stairways, mountains with steep roads,gardens or parks with narrow tracks, etc. The present invention uses aportable omni-imaging device, which is light and can be carried by aperson on his/her back. The omni-imaging device can be used to take anupper omni-image and a lower omni-image simultaneously. The two imagescover respectively the upper and lower hemi-spherical fields of view ofthe environment with an overlapping image band. In other words, theomni-imaging device with high mobility can overcome the limit forequipments and environments to take images of environments that a personreaches.

Refer to FIG. 1 and FIG. 2. The present invention, the omni-imagingdevice, uses a first omni-camera 10 and a second omni-camera 12 alignedcoaxially in a back-to-back fashion and disposed on a stabilizer 14. Thestabilizer 14 is carried by a person on his/her back to overcome thevibration problem for the first omni-camera 10 and the secondomni-camera 12. The first omni-camera 10 comprises a first projectivecamera 16 and a first hyperboloidal-shaped mirror 18, and the secondomni-camera 12 comprises a second projective camera 20 and a secondhyperboloidal-shaped mirror 22, and wherein the firsthyperboloidal-shaped mirror 18 and the second hyperboloidal-shapedmirror 22 are aligned coaxially in the back-to-back fashion, and thefirst projective camera 16 is disposed above the firsthyperboloidal-shaped mirror 18, and the second projective camera 22 isdisposed below the second hyperboloidal-shaped mirror 20. If the mirrorbottom plane is designed, as usual, to go through a focal point of thehyperboloidal-shaped of the mirror, then when two omni-cameras of such adesign are not connected seamlessly as in the usual case, a circularblind region, which is not observable by either camera, will appearundesirably. Therefore, in the present invention, the mirror bottomplane has to be lower than the focal point as shown in FIG. 2. Moreover,after two cameras with such mirrors are attached back to back, acircular overlapping region will appear in both omni-images as shown inFIG. 2. The overlapping region is helpful in building a total panoramicimage.

Refer to FIG. 1 and FIG. 3. Firstly, in Step S10, the first omni-camera10 and the second omni-camera 12 respectively capture an upperomni-image and a lower omni-image of at least one scene. The upperomni-image and the lower omni-image are transmitted to a processor.Next, in Step S12, the processor performs image inpainting and imagedehazing on the upper omni-image and the lower omni-image, and theresulted upper and lower omni-images are shown in FIGS. 4( a)-4(b).Next, a pano-mapping table is obtained by the rotation-invariantproperty (which means that an azimuth angle of a point in space is thesame to that of a corresponding image point) of the first omni-camera 10and the second omni-camera 12, and a relationship between an elevationangle of a projecting point in space and radiuses of mapping points onthe first hyperboloidal-shaped mirror 18 and the secondhyperboloidal-shaped mirror 22. The pano-mapping table can show a pairof azimuth angle and elevation angle of a real-world point, andcoordinates of a mapping point formed by the real-world point on theomni-image. Next, in Step S14, the processor performs image unwrappingon the upper omni-image and the lower omni-image by the pano-mappingtable, so as to form an upper panoramic image and a lower panoramicimage respectively. The upper panoramic image and the lower panoramicimage respectively have an upper part and a lower part overlapping eachother. The upper part and the lower part are formed by the overlappingregion. According to the optical principle and the space-mappingapproach, a light ray of a point in space can form a matching line onthe omni-image. Next, in Step S16, the processor establishes a pluralityof first matching lines 24 on the upper omni-image 26 and the loweromni-image 28 by a plurality of sight points of the scene and therotation-invariant property of the first omni-camera 10 and the secondomni-camera 12, as shown in FIGS. 5( a)-5(b). Next, in Step S18, theprocessor uses the pano-mapping table to transform the first matchinglines 24, so as to obtain a plurality of corresponding second matchinglines 30 on the upper panoramic image 32 and the lower panoramic image34, and the second matching lines 30 comprise a plurality of secondupper matching lines 36 on the upper part and a plurality of secondlower matching lines 38 on the lower part, and the second upper matchinglines 36 respectively correspond to the second lower matching lines 38,and each second upper matching line corresponds to one view point, asshown in FIG. 6.

Next, in Step S20, the processor performs edge detection on the secondupper matching lines 36 and the second lower matching lines 38, so as toobtain a plurality of upper feature points on the second upper matchinglines 36 and a plurality of lower feature points on the second lowermatching lines 38, as shown in FIGS. 7( a)-7(b).

Due to differences in noise, distortion, and scaling between the twopanoramic images, the feature points appearing in the second uppermatching line might not appear in the second lower matching line, andvice versa, resulting in insertions and deletions of feature points inthe matching lines. Regarding feature points which match mutually assubstitutions. As a result, in Step S22, the processor then defines thatthe upper feature points and the lower feature points matching eachother respectively have substitution costs, and that the upper featurepoints that the lower feature points don't match respectively haveinsertion costs, and that the lower feature points that the upperfeature points don't match respectively have deletion costs. Forexample, the substitution cost is expressed by |H(u)−H(l)|/H_(max),wherein H(u) is a hue value of the upper feature point, H(l) is a huevalue of the lower feature point, and H_(max) is a maximum hue value,and wherein the insertion cost is 0.5, and the deletion cost is 0.5.

Next, in Step S24, the processor performs the dynamic programmingtechnique on the upper feature points and the lower feature pointsaccording the substitution costs, the insertion costs, and the deletioncosts, so as to obtain a minimum cost sequence as an optimal matchingpoint sequence, and the optimal matching point sequence comprises partsof the upper feature points and parts of the lower feature pointsmatching each other, and the parts of upper feature points are used asupper matching points, the parts of lower feature points are used aslower matching points, as shown in FIGS. 8( a)-8(b).

Next, in Step S26, the processor determines whether light rays of eachupper matching point and each lower matching point matching each otherintersect on the region that a first view of the first omni-camera 10overlaps a second view of the second omni-camera 12. If the answer isno, the process proceeds to Step S28 for deleting the determined uppermatching point and the determined lower matching point, and then StepS30 is performed. If the answer is yes, as shown in FIG. 9, the processproceeds to Step S30.

As shown in FIG. 10, in Step S30, the processor chooses two uppermatching points a and b on the same second upper matching line 36 andtwo lower matching points c and d on the same second lower matching line38, which match each other, and determines whether the difference of afirst interval 11 and a second interval 12 is less than a firstpredetermined value, and the first interval 11 is the largest intervalbetween the two upper matching points a and b, and the second interval12 is the largest interval between the two lower matching points c andd. If the answer is no, the process proceeds to Step S32 for deletingthe two upper matching points a and b and the two lower matching pointsc and d, and then Step S34 is performed. If the answer is yes, theprocess proceeds to Step S34.

As shown in FIG. 11, in Step S34, the processor chooses at least twoadjacent upper matching points a and e on different second uppermatching lines 36 and at least two adjacent lower matching points c andg on different second lower matching lines 38, which match each other,and determines whether the difference of a first distance h and a seconddistance h′ is less than a second predetermined value, and the firstdistance h is a vertical distance between the two adjacent uppermatching points a and e, and the second distance h′ is a verticaldistance between the two adjacent lower matching points c and g. If theanswer is no, the process proceeds to Step S36 for deleting thedetermined upper matching points corresponding to the first distance hand the lower matching points corresponding to the second distance h′,and then Step S38 is performed. If the answer is yes, the processproceeds to Step S38.

In Step S38, the processor determines whether at least one uppermatching point and at least one lower matching point are deleted. If theanswer is no, the upper matching points and the lower matching pointsare regarded as a data item, and Step S40 is performed. In Step S40, theprocessor performs the homographic transformation technique to stitchthe upper panoramic image and the lower panoramic image to form a totalpanoramic image according to the upper matching points and the lowermatching points on the upper part and the lower part. If the answer isyes, the process proceeds to Step S39. As shown in FIG. 10 and FIG. 12,if the two deleted upper matching points a and b are used as firstreplaceable matching points, and the two deleted lower matching points cand d are used as second replaceable matching points. In Step S39, theprocessor chooses two neighboring upper matching points n1 and n3, or n2and n4 at two sides of the first replaceable matching point a or b andtwo neighboring lower matching points n5 and n7, or n6 and n8 at twosides of the second replaceable matching point c or d, which match eachother, builds a first connection line connecting with the twoneighboring upper matching points n1 and n3, or n2 and n4 and intersectsone second upper matching line 36 to generate a first intersection a′ orb′, and builds a second connection line connecting with the twoneighboring lower matching points n5 and n7, or n6 and n8 and intersectsone second lower matching line 38 to generate a second intersection c′or d′. The above intersections become the new matching points for imagestitching. Next, in Step S40, the processor performs the homographictransformation technique to stitch the upper panoramic image and thelower panoramic image to form a total panoramic image according to theremaining upper matching points and the remaining lower matching pointson the upper part and the lower part, the first intersection, and thesecond intersection, which are all used as a data item. Step S39 is usedto maintain the matching relationship for the matching lines.

Alternatively, Steps S26-S39 can be replaced with a step of obtainingthe data on the upper part and the lower part by the view points of thescene and the pano-mapping table.

And, the total panoramic image of Step S40 is shown in FIG. 13. Thepresent invention uses the dynamic programming technique and theproperties of the omni-camera to greatly reduce the image amount formatching in the stitching process, thereby reducing time for the imagestitching process.

If there is a plurality of scene spot, a process is performed after StepS40, as shown in FIG. 14. In order to dynamically display in a scenebrowsing system and immediately retrieve the image information, in StepS42, the processor firstly records the upper matching points, the lowermatching points, the first intersections, the second intersections, theupper omni-image, the lower omni-image, the upper panoramic image, thelower panoramic image, the total panoramic image, and geographicalcoordinates of each scene spot, so as to avoid repeating the imageprocess. Next, in Step S44, the processor transforms each totalpanoramic image into a perspective-view image by a perspective-mappingtable in order to browse a real environment image. Theperspective-mapping table can generate the perspective-view image forany of directions without complicated computations, so as to achieve thegoal of real-time display. Specifically, the entries ofperspective-mapping table are recorded by the corresponding coordinatesof the pano-mapping table. When a user wants to change the direction ofthe scene image, the entries of the perspective-mapping table can beshifted to obtain the perspective-view image required according to thechanges of azimuth angle and elevation angle. Then, the processor usesoptical properties and recording rules for images to calculate thecoordinates on the omni-images and the perspective-view image of eachscene spot by the geographical coordinates, thereby forming a walkingpath for browsing. Next, in Step S46, the processor establishes anenvironment three-view diagram by the geographical coordinates of eachscene. The processor is coupled to a display and an operation interfacesuch as a mouse, and transmits the total panoramic image, theperspective-view image, and the environment three-view diagram to thedisplay for showing.

Finally, in Step S48, the processor changes a viewpoint through thetotal panoramic image, the perspective-view image, or the environmentthree-view diagram. For example, as shown in FIG. 15, the user maynavigate the environment further at the current scene spot by 6 ways:(1) changing the viewpoint though the perspective-view image (byclicking and dragging the image to turn into a desired view); (2)changing the viewpoint through the total panoramic image (by clicking apoint on the image to select a new view); (3) going forward or backwardby navigating the walking path (by clicking on an arrow of the path);(4) going forward or backward step by step on the walking path (byclicking on the arrow); (5) changing the scene spot through thethree-view diagram (by clicking on a point any of the three views to seethe closest scene spot); (6) zooming in or out the current view (byclicking on the perspective-view image).

In the process of FIG. 14, Step S48 can be omitted whereby the displayeffect of the present invention is also achieved.

The present invention has several merits: (1) it is light to carry toany indoor/outdoor place; (2) it can be used to collect images innarrow, non-planar, or slanted paths where existing street view vehiclescannot navigate; (3) only two omni-images are acquired to constructvarious images for each scene spot; (4) perspective-view images can begenerated for scene observation from any view direction; (5) six ways ofenvironment browsing via a perspective-view image, a panoramic image, awalking path, and a three-view diagram are provided.

In conclusion, the present invention can greatly reduce the image amountand time for the image stitching process, and take images ofenvironments that a person can reach.

The embodiments described above are only to exemplify the presentinvention but not to limit the scope of the present invention.Therefore, any equivalent modification or variation according to theshapes, structures, characteristics and spirit of the present inventionis to be also included within the scope of the present invention.

What is claimed is:
 1. A scene imaging method using a portabletwo-camera omni-imaging device for human-reachable environments, whichis processed by a processor, comprising steps of: a two-cameraomni-imaging device consisting of a first omni-camera and a secondomni-camera respectively capturing an upper omni-image and a loweromni-image of at least one scene; performing image inpainting and imagedehazing on said upper omni-image and said lower omni-image; performingimage unwrapping on said upper omni-image and said lower omni-image by apano-mapping table, so as to form an upper panoramic image and a lowerpanoramic image respectively, and said upper panoramic image and saidlower panoramic image respectively have an upper part and a lower partoverlapping each other; obtaining a data item on said upper part andsaid lower part by a plurality of view points of said scene and saidpano-mapping table; and stitching said upper panoramic image and saidlower panoramic image to form a total panoramic image according to saiddata.
 2. The scene imaging method using the portable two-cameraomni-imaging device for human-reachable environments according to claim1, wherein said first omni-camera and said second omni-camera arealigned coaxially in a back-to-back fashion.
 3. The scene imaging methodusing the portable two-camera omni-imaging device for human-reachableenvironments according to claim 2, wherein said first omni-cameracomprises a first projective camera and a first hyperboloidal-shapedmirror, and said second omni-camera comprises a second projective cameraand a second hyperboloidal-shaped mirror, and wherein said firsthyperboloidal-shaped mirror and said second hyperboloidal-shaped mirrorare aligned coaxially in said back-to-back fashion, and said firstprojective camera is disposed above said first hyperboloidal-shapedmirror, and said second projective camera is disposed below said secondhyperboloidal-shaped mirror.
 4. The scene imaging method using theportable two-camera omni-imaging device for human-reachable environmentsaccording to claim 3, wherein said pano-mapping table is obtained byrotation-invariant property of said first omni-camera and said secondomni-camera, and a relationship between an elevation angle of aprojecting point in real-world space and radiuses of mapping points onsaid first hyperboloidal-shaped mirror and said secondhyperboloidal-shaped mirror.
 5. The scene imaging method using theportable two-camera omni-imaging device for human-reachable environmentsaccording to claim 2, wherein and wherein said step of obtaining saiddata by said view points and said pano-mapping table further comprisessteps of: establishing a plurality of first matching lines on said upperomni-image and said lower omni-image by said view points; using saidpano-mapping table to transform said first matching lines, so as toobtain a plurality of corresponding second matching lines on said upperpanoramic image and said lower panoramic image, and said second matchinglines comprise a plurality of second upper matching lines on said upperpart and a plurality of second lower matching lines on said lower part,and said second upper matching lines respectively correspond to saidsecond lower matching lines, and each said second upper matching linecorresponds to one said view point; performing edge detection on saidsecond upper matching lines and said second lower matching lines, so asto obtain a plurality of upper feature points on said second uppermatching lines and a plurality of lower feature points on said secondlower matching lines; defining that said upper feature points and saidlower feature points matching each other respectively have substitutioncosts, and that said upper feature points that said lower feature pointsdon't match respectively have insertion costs, and that said lowerfeature points that said upper feature points don't match respectivelyhave deletion costs; performing dynamic programming technique on saidupper feature points and said lower feature points according saidsubstitution costs, said insertion costs, and said deletion costs, so asto obtain a minimum cost sequence as an optimal matching point sequence,and said optimal matching point sequence comprises parts of said upperfeature points and parts of said lower feature points matching eachother, and said parts of said upper feature points are used as uppermatching points, said parts of said lower feature points are used aslower matching points; determining whether light rays of each said uppermatching point and each said lower matching point matching each otherintersect on a region that a first view of said first omni-cameraoverlaps a second view of said second omni-camera: if no, deletingdetermined said upper matching point and determined said lower matchingpoint, and then executing a step of; and if yes, executing a step of;choosing two said upper matching points on same said second uppermatching line and two said lower matching points on same said secondlower matching line, which match each other, and determining whether adifference of a first interval and a second interval is less than afirst predetermined value, and said first interval is a largest intervalbetween said two said upper matching points, and said second interval isa largest interval between said two said lower matching points: if no,deleting said two said upper matching points and said two said lowermatching points, and then executing a step of; and if yes, executing astep of; choosing at least two adjacent said upper matching points ondifferent said second upper matching lines and at least two adjacentsaid lower matching points on different said second lower matchinglines, which match each other, and determining whether a difference of afirst distance and a second distance is less than a second predeterminedvalue, and said first distance is a vertical distance between said twoadjacent said upper matching points, and said second distance is avertical distance between said two adjacent said lower matching points:if no, deleting determined said upper matching points corresponding tosaid first distance and said lower matching points corresponding to saidsecond distance, and then executing a step of; and if yes, executing astep of; and determining whether at least one said upper matching pointand at least one said lower matching point are deleted: if no, regardingsaid upper matching points and said lower matching points as said data;and if yes, deleted said upper matching point used as a firstreplaceable matching point, and deleted said lower matching point usedas a second replaceable matching point, and choosing two neighboringsaid upper matching points at two sides of said first replaceablematching point and two neighboring said lower matching points at twosides of said second replaceable matching point, which match each other,and building a first connection line connecting with said twoneighboring said upper matching points and intersecting one said secondupper matching line to generate a first intersection, and building asecond connection line connecting with said two neighboring said lowermatching points and intersecting one said second lower matching line togenerate a second intersection, and regarding said upper matching pointsand said lower matching points on said upper part and said lower part,said first intersection, and said second intersection as said data. 6.The scene imaging method using the portable two-camera omni-imagingdevice for human-reachable environments according to claim 5, whereinsaid substitution cost is expressed by |H(u)−H(l)|/H_(max), and whereinH(u) is a hue value of said upper feature point, H(l) is a hue value ofsaid lower feature point, and H_(max) is a maximum hue value, andwherein said insertion cost is 0.5, and said deletion cost is 0.5. 7.The scene imaging method using the portable two-camera omni-imagingdevice for human-reachable environments according to claim 5, wherein insaid step of establishing said first matching lines by said view points,said first matching lines are established by said view points androtation-invariant property of said first omni-camera and said secondomni-camera.
 8. The scene imaging method using the portable two-cameraomni-imaging device for human-reachable environments according to claim5, wherein said at least one scene is a plurality of scene spot, saidmethod further comprising steps of: recording said upper matchingpoints, said lower matching points, said first intersections, saidsecond intersections, said upper omni-image, said lower omni-image, saidupper panoramic image, said lower panoramic image, said total panoramicimage, and geographical coordinates of each said scene spot;transforming each said total panoramic image into a perspective-viewimage by a perspective-mapping table; and establishing an environmentthree-view diagram by said geographical coordinates of each said scene.9. The scene imaging method using the portable two-camera omni-imagingdevice for human-reachable environments according to claim 8, furthercomprising a step of changing a viewpoint through said total panoramicimage, said perspective-view image, or said environment three-viewdiagram.